From 35c8fc2f0f552538a94e10cd076547b0c7903af9 Mon Sep 17 00:00:00 2001 From: Kevin Ryde Date: Wed, 25 Nov 2009 22:41:06 +0000 Subject: [PATCH] * man.el (Man-completion-table): default-directory "/" in case doesn't otherwise exist. process-environment COLUMNS=999 so as not to truncate long names. process-connection-type pipe to avoid any chance of hitting the pseudo-tty TIOCGWINSZ. (Further to Bug#3717.) --- lisp/man.el | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/lisp/man.el b/lisp/man.el index 25ba3eb0638..cbec29f1250 100644 --- a/lisp/man.el +++ b/lisp/man.el @@ -761,14 +761,18 @@ POS defaults to `point'." (unless (and Man-completion-cache (string-prefix-p (car Man-completion-cache) string)) (with-temp-buffer + (setq default-directory "/") ;; in case inherited doesn't exist ;; Actually for my `man' the arg is a regexp. Don't know how ;; standard that is. Also, it's not clear what kind of ;; regexp are accepted: under GNU/Linux it seems it's ERE-style, ;; whereas under MacOSX it seems to be BRE-style and ;; doesn't accept backslashes at all. Let's not bother to ;; quote anything. + (let ((process-connection-type nil) ;; pipe + (process-environment (copy-sequence process-environment))) + (setenv "COLUMNS" "999") ;; don't truncate long names (call-process manual-program nil '(t nil) nil - "-k" (concat "^" string)) + "-k" (concat "^" string))) (goto-char (point-min)) (while (re-search-forward "^[^ \t\n]+\\(?: (.+?)\\)?" nil t) (push (match-string 0) table))) -- 2.30.2